package sanshi.contect.singlet;



/**
 * 单例模式；singleton。保证整个程序中只有一个对象
 *         懒汉式：在定义变量的时候，使用volatile是为了防止在JVM的时候发生指令重排
 */
public class Singleton {

    private static volatile Singleton singleton = null;
    
    private Singleton(){}

    public static Singleton getInstance(){
        if (singleton == null){
            synchronized(Singleton.class){
                if (singleton == null){
                    singleton = new Singleton();
                }
            }
        }
        return singleton;
    }
}
